﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Core.AdditionalInterfaces
{
    public interface ITree
    {
        System.Int32 Id { get; set; }
        System.Boolean IsRoot { get; set; }
        System.Boolean HasChild { get; set; }        
        System.Int32 ParentId { get; set; }        
    }

    public interface ITree<T> : ITree where T : class, ITree
    {
        T ParentEntity { get; set; }
        IEnumerable<T> ChildEntities { get; set; }
    }
}
